package steed.util.wechat.domain.send;

import steed.exception.runtime.MessageRuntimeException;

public class RefundSend {
	private String appid;// 	是 	String(32) 	wx8888888888888888 	微信分配的小程序ID
	private String mch_id;//	是 	String(32) 	1900000109 	微信支付分配的商户号
	private String device_info ;//	否 	String(32) 	013467007045764 	终端设备号
	private String  nonce_str ;//	是 	String(32) 	5K8264ILTKCH16CQ2502SI8ZNMTM67VS 	随机字符串，不长于32位。推荐随机数生成算法
	private String sign;// 	是 	String(32) 	C380BEC2BFD727A4B6845133519F3AD6 	签名，详见签名生成算法
	/**
	 * 固定用MD5,不允许更改
	 */
	private String sign_type;// 	否 	String(32) 	HMAC-SHA256 	签名类型，目前支持HMAC-SHA256和MD5，默认为MD5
	private String transaction_id;// 	二选一 	String(28) 	1217752501201407033233368018 	微信生成的订单号，在支付通知中有返回
	private String out_trade_no;// 	String(32) 	1217752501201407033233368018 	商户侧传给微信的订单号
	private String out_refund_no;//	是 	String(32) 	1217752501201407033233368018 	商户系统内部的退款单号，商户系统内部唯一，同一退款单号多次请求只退一笔
	private Integer  total_fee;// 	是 	Int 	100 	订单总金额，单位为分，只能为整数，详见支付金额
	private Integer refund_fee;// 	是 	Int 	100 	退款总金额，订单总金额，单位为分，只能为整数，详见支付金额
	private String refund_fee_type;// 	否 	String(8) 	CNY 	货币类型，符合ISO 4217标准的三位字母代码，默认人民币：CNY，其他值列表详见货币类型
	private String op_user_id;// 	是 	String(32) 	1900000109 	操作员帐号, 默认为商户号
	private String refund_account;// 	否 	String(30) 	REFUND_SOURCE_RECHARGE_FUNDS 	
	public String getAppid() {
		return appid;
	}
	
	public RefundSend() {
		this.sign_type = "MD5";
	}

	public void setAppid(String appid) {
		this.appid = appid;
	}
	public String getMch_id() {
		return mch_id;
	}
	public void setMch_id(String mch_id) {
		this.mch_id = mch_id;
	}
	public String getDevice_info() {
		return device_info;
	}
	public void setDevice_info(String device_info) {
		this.device_info = device_info;
	}
	public String getNonce_str() {
		return nonce_str;
	}
	public void setNonce_str(String nonce_str) {
		this.nonce_str = nonce_str;
	}
	public String getSign() {
		return sign;
	}
	public void setSign(String sign) {
		this.sign = sign;
	}
	public String getSign_type() {
		return sign_type;
	}
	/*public void setSign_type(String sign_type) {
		throw new MessageRuntimeException("规范编码,统一用MD5签名算法,不允许字定义算法");
	}*/
	public String getTransaction_id() {
		return transaction_id;
	}
	public void setTransaction_id(String transaction_id) {
		this.transaction_id = transaction_id;
	}
	public String getOut_trade_no() {
		return out_trade_no;
	}
	public void setOut_trade_no(String out_trade_no) {
		this.out_trade_no = out_trade_no;
	}
	public String getOut_refund_no() {
		return out_refund_no;
	}
	public void setOut_refund_no(String out_refund_no) {
		this.out_refund_no = out_refund_no;
	}
	public Integer getTotal_fee() {
		return total_fee;
	}
	public void setTotal_fee(Integer total_fee) {
		this.total_fee = total_fee;
	}
	public Integer getRefund_fee() {
		return refund_fee;
	}
	public void setRefund_fee(Integer refund_fee) {
		this.refund_fee = refund_fee;
	}
	public String getRefund_fee_type() {
		return refund_fee_type;
	}
	public void setRefund_fee_type(String refund_fee_type) {
		this.refund_fee_type = refund_fee_type;
	}
	public String getOp_user_id() {
		return op_user_id;
	}
	public void setOp_user_id(String op_user_id) {
		this.op_user_id = op_user_id;
	}
	public String getRefund_account() {
		return refund_account;
	}
	public void setRefund_account(String refund_account) {
		this.refund_account = refund_account;
	}

	
}
